package weaver.splittable.db;

/**
 * 数据库建触发器工具接口
 * 不同数据库做不同实现
 * author: YUEYANG 2023-01-12
 */
public interface STCreateTriggerUtil {

    /**
     * 创建 insert 操作的触发器
     * @param tableName 目标表名
     * @param dataIdColumn 唯一标识列
     * @return 创建SQL
     */
    public String createTriggerInsert(String tableName, String dataIdColumn);

    /**
     * 创建 update 操作的触发器
     * @param tableName 目标表名
     * @param dataIdColumn 唯一标识列
     * @return 创建SQL
     */
    public String createTriggerUpdate(String tableName, String dataIdColumn);

    /**
     * 创建 delete 操作的触发器
     * @param tableName 目标表名
     * @param dataIdColumn 唯一标识列
     * @return 创建SQL
     */
    public String createTriggerDelete(String tableName, String dataIdColumn);

}
